<template>
    <div class="list" ref="wrapper">
        <div>
      <div class="area">
          <div class="title border-topbottom">当前城市</div>
          
          <div class="button-list">
            <div class="button-wrapper">
             <div class="button">{{this.$store.state.city}}</div>
             </div>
          </div>

      </div>

      <div class="area">
           <div class="title border-topbottom">热门城市</div>
            <div class="button-list">
            <div class="button-wrapper" v-for="item of hot" :key="item.id" @click="handleCityClick(item.name)">
             <div class="button">{{item.name}}</div>
             </div>
          </div>
      </div>

      <div class="area" v-for="(item, key) of cities" :key="key" :ref="key">
        <div class="title border-topbottom">{{key}}</div>
       <div class="item-list">

        <div class="item border-bottom" v-for="innerItem of item" :key="innerItem.id"
          @click="handleCityClick(innerItem.name)"
        >{{innerItem.name}}</div>

       </div>
     </div>
     </div>

    </div>
</template>
<script>
  import Bscroll from 'better-scroll'

    export default {
      name: 'CityList',
      props: {
        hot: Array,
        cities: Object,
        letter: String
      },
      methods: {
          handleCityClick (city) {
            this.$store.commit('changeCity',city)
            this.$router.push('/')
          }
      },
      mounted () {
        this.scroll=new Bscroll(this.$refs.wrapper, { mouseWheel: true, click: true, tap: true })
      },
      watch: {
        letter () {
         if(this.letter) {
          const element = this.$refs[this.letter][0]
          this.scroll.scrollToElement(element)
         }
        }
      }
    }
</script>
<style   scoped>
      .border-topbottom:before {
        border-color: #ccc
      }
      .border-topbottom:after{
        border-color: #ccc
      }

      .border-bottom:after{
        border-color: #575757;
      }

      .list {
         overflow: hidden;
         position: absolute;
         top: 1.58rem;
         left: 0;
         right: 0;
         bottom: 0;
      }


    .title {
        height: .64rem;
        line-height: .64rem;
        background: #eee;
        padding-left: .2rem;
        color: #666;
        font-size: .26rem;
    }

    .button-list {
        overflow: hidden;
        padding: .1rem .6rem .1rem .1rem;
    }

    .button-wrapper {
        float: left;
        width: 33.3%;
    }

    .button {
        margin: .1rem;
        text-align: center;
        padding: .13rem 0;
        border: .02rem solid #ccc;
        border-radius: .06rem;
    }

    .item-list .item{
        line-height: .80rem;
        color: #666;
        padding-left: .3rem;
    }


</style>